package com.three.box.helper;

import android.content.Context;

/**
 * dp、sp 转换为 px 的工具类
 */
public class DisplayHelper {
    /**
     * @return 屏幕像素宽度，px类型
     */
    public static int getScreenWidth(Context context) {
        return context.getResources()
                .getDisplayMetrics().widthPixels;
    }

    /**
     * @return 屏幕像素高度，px类型
     */
    public static int getScreenHeight(Context context) {
        return context.getResources()
                .getDisplayMetrics().heightPixels;
    }

    /**
     * 将px值转换为dip或dp值，保证尺寸大小不变
     */
    public static float px2dp(Context context, float pxVal) {
        float scale = context.getResources()
                .getDisplayMetrics().density;
        return (pxVal / scale);
    }

    /**
     * 将dip或dp值转换为px值，保证尺寸大小不变
     */
    public static float dp2px(Context context, float dpVal) {
        float scale = context.getResources()
                .getDisplayMetrics().density;
        return (dpVal * scale);
    }

    /**
     * 将px值转换为sp值，保证文字大小不变
     */
    public static float px2sp(Context context, float pxVal) {
        float fontScale = context.getResources()
                .getDisplayMetrics().scaledDensity;
        return (pxVal / fontScale);
    }

    /**
     * 将sp值转换为px值，保证文字大小不变
     */
    public static float sp2px(Context context, float spVal) {
        float fontScale = context.getResources()
                .getDisplayMetrics().scaledDensity;
        return (spVal * fontScale);
    }


}